package com.springinaction.springidol;

/**
 * 很有天赋的音乐演奏家
 * 使用set方法注入
 * 面向接口编程,对象看到的是接口,那么底层的实现就可以改变或者扩展而只修改配置文件就好
 * @time 2014年11月25日13:58:25
 * @author xupeng
 *
 */
public class Instrumentalist implements Performer {
	
	private String song;
	
	private Instrument instrument;
	
	public String getSong() {
		return song;
	}

	public void setSong(String song) {
		this.song = song;
	}

	public Instrument getInstrument() {
		return instrument;
	}

	public void setInstrument(Instrument instrument) {
		this.instrument = instrument;
	}

	public Instrumentalist() {}

	@Override
	public void perform() throws PerformanceException {
		System.out.print("Playing " + song + " : ");
		instrument.play();
	}

}
